#include <iostream>
#include <bitset>
#include "SDL/SDL.h"
using namespace std;

int main(int argc, char* argv[]) {
	//SDL_putenv("SDL_VIDEODRIVER=directx");
	SDL_Init(SDL_INIT_VIDEO);
	atexit(SDL_Quit);

	SDL_Surface* pScreen = SDL_SetVideoMode(640, 480, 32, SDL_HWSURFACE);
	SDL_Flip(pScreen);

	const SDL_VideoInfo* myInfo = SDL_GetVideoInfo();
	cout << "Is it possible to create hardware surfaces? "
			<< myInfo->hw_available << endl;
	cout << "Is there a window manager available? " << myInfo->wm_available
			<< endl;
	cout << "Are hardware to hardware blits accelerated? " << myInfo->blit_hw
			<< endl;
	cout << "Are hardware to hardware colorkey blits accelerated? "
			<< myInfo->blit_hw_CC << endl;
	cout << "Are hardware to hardware alpha blits accelerated? "
			<< myInfo->blit_hw_A << endl;
	cout << "Are software to hardware blits accelerated? " << myInfo->blit_sw
			<< endl;
	cout << "Are software to hardware colorkey blits accelerated? "
			<< myInfo->blit_sw_CC << endl;
	cout << "Are software to hardware alpha blits accelerated? "
			<< myInfo->blit_sw_A << endl;
	cout << "Are color fills accelerated? " << myInfo->blit_fill << endl;
	cout << "Total amount of video memory in Kilobytes? " << myInfo->video_mem
			<< endl;
	cout << "Width of the current video mode? " << myInfo->current_w << endl;
	cout << "Height of the current video mode? " << myInfo->current_h << endl;

	char driverName[20];
	SDL_VideoDriverName(driverName, 20);
	cout << "SDL_VideoDriverName = " << driverName << endl;
	return 0;
}
